package com.huluobo.a2202mvvm_im_douyindemo.touch;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;
import android.view.MotionEvent;

import com.huluobo.a2202mvvm_im_douyindemo.R;

/**
 * 事件分发机制:
 * MotionEvent 触摸事件 一个完整的触摸事件,包含1个Up 一个Down,和0到无数个Move
 * dispatchTouchEvent 分发的方法,负责把事件向下传递
 * onTouchEvent 消费的方法,负责将事件消耗掉
 * onInterceptTouchEvent(只有在Layout中才有该方法) 拦截的方法,则将事件拦截到此,但是不影响传递
 */
public class TouchActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_touch);
    }

    @Override
    public boolean dispatchTouchEvent(MotionEvent ev) {
        Log.i("TagA", "activity的分发方法" + ev.getAction());
        return super.dispatchTouchEvent(ev);
    }

    @Override
    public boolean onTouchEvent(MotionEvent event) {
        Log.i("TagA", "activity的消费方法" + event.getAction());
        return super.onTouchEvent(event);
    }
}